package at.fhv.androideightpuzzle.application.interfaces;

import at.fhv.androideightpuzzle.domain.Position;
import at.fhv.androideightpuzzle.domain.SwapDirection;

public interface IPlayPuzzleController {
	
	public void cancelPuzzle();
	
	public boolean isFinished();
	
	public void loadPuzzle(String puzzleId);
	
	public void shuffle();
	
	public void start();
	
	public int[][] swapEmptyPart(SwapDirection swapDirection);
	
	public int[][] swapPart(Position position);
	
	public long getDuration();
	
	public int[][] getImagePositions();
}
